The present invention relates to generating electronic documents.
The Internet is a global network that uses a common communication protocol, the Transfer Control Protocol/Internet Protocol (“TCP/IP”), to transmit data from one computer to another. In order to use the transmitted data, computer applications adopt communication standards. For example, the World Wide Web (“Web”) is a system that includes server applications supporting Hyper Text Markup Language (“HTML”) documents. Such computer applications are referred to as web servers, because they deliver, i.e., ‘serve’, electronic documents to users on the Web. The served documents are called web pages or web documents. Each web document has a Uniform Resource Locator (“URL”) address that allows web users to request the web document from a corresponding server and to view the requested document, for example, by using web browsers, such as Netscape Navigator or Microsoft Internet Explorer. Web documents can include images, texts, scripts, or any other content in HTML or any other format.
A web server can serve web documents from one or more web sites. Each web site is a collection of web documents and can include static web documents, document templates, or both. A static web document, also called static web page, has only static content that is provided each time the document is requested from the server. A document template, also called dynamic web page, identifies a class of web documents; an instance of the class is generated each time a web document is requested according to the template. The generated web document depends on parameters that can be specified by the web server, can be a result of communication with a user, or can be directly included in a URL request. The document template includes instructions for generating the requested web document that are typically implemented using a server side scripting technology such as Active Server Pages (“ASP”), JavaServer Pages (“JSP”), and PHP Hypertext Preprocessor (“PHP”). In addition to instructions, document templates can include static content, for example, in HTML format.